-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
1129 improve api for subphases #1805
base: develop
Are you sure you want to change the base?
Conversation
The current implementation appears to have a race condition. Does the action that gets triggered at the end of an epoch immediately follow termination or happen at some unknown point after termination? |
PR tests (gcc-5, ubuntu, mpich) Build for ce6b977
|
PR tests (clang-3.9, ubuntu, mpich) Build for ce6b977
|
PR tests (gcc-6, ubuntu, mpich) Build for ce6b977
|
PR tests (gcc-9, ubuntu, mpich, zoltan) Build for ce6b977
|
PR tests (clang-9, ubuntu, mpich) Build for ce6b977
|
PR tests (gcc-8, ubuntu, mpich, address sanitizer) Build for ce6b977
|
PR tests (clang-12, ubuntu, mpich) Build for ce6b977
|
PR tests (clang-13, ubuntu, mpich) Build for ce6b977
|
PR tests (clang-11, ubuntu, mpich) Build for ce6b977
|
PR tests (clang-10, alpine, mpich) Build for ce6b977
|
PR tests (nvidia cuda 11.0, ubuntu, mpich) Build for ce6b977
|
PR tests (clang-14, ubuntu, mpich) Build for 9946d16
|
PR tests (gcc-11, ubuntu, mpich) Build for 9946d16
|
PR tests (clang-10, ubuntu, mpich) Build for ce6b977
|
PR tests (gcc-12, ubuntu, mpich) Build for 9946d16
|
The PR adds tracking of subphases to the
PhaseManager
and removes it fromElementLBData
. Similarly, it moves tracking of phases fromPhaseManager
toElementLBData
, although that is not an essential part of this PR and could be reversed.This PR adds
CollectionChainSet::nextStepCollectiveSubphase()
(could be renamed) andrunSubphaseCollective
to the API for advancing the subphase. The API for explicitly setting the subphase on each collection element has been removed.A subphase ends at the termination of the epoch created by
nextStepCollectiveSubphase
orrunSubphaseCollective
and may contain work that preceded the call and did not fall explicitly within an earlier subphase. If there is no work following termination of an epoch that defines a subphase, there will be an empty subphase following it.Closes #1129